home *** CD-ROM | disk | FTP | other *** search
/ SGI Hot Mix 14 / Hot Mix 14.iso / HTML / vendors / finesse / examples / csh / callbacks next >
Text File  |  1996-06-27  |  2KB  |  78 lines

  1. #! /bin/csh
  2. # FINESSEAPPLICATIONKEY sBqQOMJA}~`IV
  3. #
  4. if (! $?FINESSEPATH) set FINESSEPATH = /usr/local/finesse
  5. source $FINESSEPATH/fscshinit
  6.  
  7. Fsopen -o 1
  8.  
  9. # csh window definition syntax depending on operating system
  10.  
  11. if ( "`uname`" == "SCO_SV" ) then
  12.  echo "csh not supported. Use 'tcsh' or convert to 'sh'."
  13.  exit 1
  14. else if ( "`uname`" == "OSF1" ) then
  15.  set a = "FsWindow -name callback "
  16.  set aa = "-title 'Example Shell Callback';"
  17.  set b = "FsPushButton -label Button1 "
  18.  set ba = "-fsbutton b1 -winstat touch;"
  19.  set c = "FsPushButton -label Button2 "
  20.  set ca = "-fsbutton b2 -winstat touch;"
  21.  set d = "FsPushButton -label Button3 "
  22.  set da = "-fsbutton b3 -winstat touch;"
  23.  set e = "FsPushButton -label Button4 "
  24.  set ea = "-fsbutton b4 -winstat touch -nrows 2;"
  25.  set f = "FsRadio -items '1 2 3' -var num=1 "
  26.  set fa = "-fsbutton 123 -winstat touch;"
  27.  set g = "FsRadio -items '3 6 9' -var enum=3 "
  28.  set ga = "-label 'times 3' -fsbutton 369 -winstat touch;"
  29.  set windef = "$a$aa $b$ba $c$ca $d$da $e$ea $f$fa $g$ga" 
  30. else
  31.  set windef = "\
  32.   FsWindow -name callback -title 'Example Shell Callback';\
  33.   FsPushButton -label Button1 -fsbutton b1 -winstat touch;\
  34.   FsPushButton -label Button2 -fsbutton b2 -winstat touch;\
  35.   FsPushButton -label Button3 -fsbutton b3 -winstat touch;\
  36.   FsPushButton -label Button4 -fsbutton b4 -winstat touch\
  37.            -nrows 2;\
  38.   FsRadio -items '1 2 3' -var num=1\
  39.           -fsbutton 123 -winstat touch ;\
  40.   FsRadio -items '3 6 9' -var enum=3\
  41.           -label 'times 3' -fsbutton 369 -winstat touch;"
  42. endif
  43.  
  44. if ( "`uname`" == "AIX" && "`uname -v`" == "4" ) then
  45.  set windefx = ($windef:x)
  46.  Fsdisplay -w "$windefx" -m "Push Callback Button:" 
  47. else
  48.  Fsdisplay -w $windef:q -m "Push Callback Button:"
  49. endif
  50.  
  51. while (1)
  52.  switch ($fsbutton)
  53.   case b[1-4]: 
  54.    set sub = "FsWindow -name s$fsbutton -btype o;" 
  55.    echo Shell callback $fsbutton... > $FSSTDOUTFILE
  56.    Fsdisplay -w "$sub" -n s$fsbutton\
  57.              -m "Displaying subwindow $fsbutton..."
  58.    breaksw
  59.   case o:
  60.    Fsdisplay -n callback
  61.    breaksw
  62.   case 123:
  63.    set enum = `expr $num \* 3`
  64.    echo Shell callback $fsbutton... > $FSSTDOUTFILE
  65.    Fsdisplay -n callback -v enum=$enum 
  66.    breaksw
  67.   case 369:
  68.    set num = `expr $enum / 3`
  69.    echo Shell callback $fsbutton... > $FSSTDOUTFILE
  70.    Fsdisplay -n callback -v num=$num
  71.    breaksw
  72.   default:
  73.    break
  74.  endsw
  75. end
  76.  
  77. Fsclose
  78.